const http = require('http');
const fs = require('fs');

// 创建一个线程
http
    .createServer( function(req,res) {
        if(req.url === '/') {
            fs.createReadStream('./pic.html').pipe(res);
        }else if(req.url === '/upload') {

            let img = [];
            let size = 0;
            // 因为通过 http 发送的是分组，在这里要把每次传过来的分组保存下来，以便后面合并成原始文件
            req.on('data',chunk => {
                console.log(chunk);
                img.push(chunk);
                size += chunk.length;
            })
            req.on('end',function(){
                const buffer = Buffer.concat(img,size); // 缓冲，将img中的buffer连接起来
                fs.writeFileSync('small.jpg',buffer,(err) => {
                    if(err) {
                        console.error(err);
                        return ;
                    }
                    console.log('上传文件成功');
                })
                res.end('上传文件成功');
            })
            
        }

    })
    .listen(1314);